home *** CD-ROM | disk | FTP | other *** search
/ PC Professionell 2002 September / PCpro_2002_09.ISO / techtalk / automationsuite / 247setup.exe / {app} / JDL.BAS < prev    next >
Encoding:
BASIC Source File  |  2002-07-11  |  2.5 KB  |  80 lines

  1. Attribute VB_Name = "24x7"
  2. Option Compare Database
  3. Option Explicit
  4.  
  5. Sub Macro_24x7()
  6. '
  7. ' Establish DDE link to 24x7 Scheduler and send some commands
  8. '
  9. '
  10.     Dim ChannelNumber As Long, NewJob As Long, JobName As String
  11.         
  12.     
  13.     ' initiate DDE conversation
  14.     ChannelNumber = Application.DDEInitiate("24x7 Scheduler", "JDL")
  15.  
  16.     ' get name for the job #1
  17.     JobName = DDEGetValue(ChannelNumber, "1" + Chr(9) + "NAME")
  18.     
  19.     ' disable job #1
  20.     Call DDEDisable(ChannelNumber, "1")
  21.     ' or alternatively perform the operation using job name
  22.     ' instead of number. This works for all commands
  23.     ' Call DDEDisable(ChannelNumber, ActiveCell.Value)
  24.     
  25.     ' change name for the job #1
  26.     Call DDESetValue(ChannelNumber, "1" + Chr(9) + "Name", "New Name for job #1")
  27.     
  28.     ' delete job #1
  29.     Call DDEDelete(ChannelNumber, "1")
  30.     
  31.     ' add new job
  32.     NewJob = DDEAdd(ChannelNumber)
  33.     If NewJob > 0 Then 'set new job properties
  34.         Call DDESetValue(ChannelNumber, CStr(NewJob) + Chr(9) + "Name", "New Name")
  35.         Call DDESetValue(ChannelNumber, CStr(NewJob) + Chr(9) + "Command", "c:\feed\mfeed.ex /S")
  36.         Call DDESetValue(ChannelNumber, CStr(NewJob) + Chr(9) + "Start_Time", "19:30")
  37.         Call DDESetValue(ChannelNumber, CStr(NewJob) + Chr(9) + "Async", "N")
  38.         Call DDESetValue(ChannelNumber, CStr(NewJob) + Chr(9) + "Timeout", "30")
  39.     End If
  40.     
  41.     ' save changes
  42.     'Call DDESave(ChannelNumber)
  43.     
  44.     
  45.     ' terminate DDE conversation
  46.     Application.DDETerminate ChannelNumber
  47. End Sub
  48.  
  49. Function DDEGetValue(ChannelNumber As Long, Location As String) As String
  50.     DDEGetValue = Application.DDERequest(ChannelNumber, Location)
  51. End Function
  52.  
  53. Sub DDESetValue(ChannelNumber As Long, Location As String, Data As String)
  54.     Application.DDEPoke ChannelNumber, Location, Data
  55. End Sub
  56.  
  57. Sub DDEDisable(ChannelNumber As Long, Location As String)
  58.     Application.DDEExecute ChannelNumber, "DIS " + Location
  59. End Sub
  60.  
  61. Sub DDEEnable(ChannelNumber As Long, Location As String)
  62.     Application.DDEExecute ChannelNumber, "ENA " + Location
  63. End Sub
  64.  
  65. Sub DDEDelete(ChannelNumber As Long, Location As String)
  66.     Application.DDEExecute ChannelNumber, "DEL " + Location
  67. End Sub
  68.  
  69. Sub DDESave(ChannelNumber As Long)
  70.     Application.DDEExecute ChannelNumber, "SAV"
  71. End Sub
  72.  
  73.  
  74. Function DDEAdd(ChannelNumber As Long) As Long
  75.     Application.DDEExecute ChannelNumber, "ADD"
  76.     DDEAdd = DDEGetValue(ChannelNumber, "NEW_ID")
  77. End Function
  78.  
  79.  
  80.